<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 递归函数: 传递与回归
        //     函数自己调用自己

        // isOu(rand(0,10)) ;


        // function fn () {
        //     var res = rand(0 ,100) ;
        //     console.log(res) ;
        // }

        // fn()


        // 函数不断的调用函数自己   ---  死递归
        // function fn() {
        //     console.log(6) ;
        //     fn() ;
        // }

        // fn() ;



        // 1 + 2 + 3 + 4 +5 + 6 + ... + 10 ;

        // 换个思路

        // 有人能把1-9的和算出来    sum + 10 ;

        // 有人能把1-8求和算出来    sum + 9 ;

        // 有人能把1-7求和算出来    sum + 8 ;

        // 有人能把1-6求和算出来    sum + 7 ;

        // 有人能把1-5求和算出来    sum + 6 ;

        // 有人能把1-4求和算出来    sum + 5 ;

        // 有人能把1-3求和算出来    sum + 4 ;

        // 有人能把1-2求和算出来    sum + 3 ;

        // 有人能把1求和算出来      sum + 2 ;   1的和就是1   ->  不能再套娃   出来
        

        // ...   n的和   sum(n - 1) + n ;


        function sum(n) {
            if(n === 1) {
                return 1 ;
            }
            return sum(n - 1) + n ;
        }

        sum(5) ;


        // sum(5) 

        //   sum(4) + 5 

        //   sum(3) + 4 

        //   sum(2) + 3

        //   sum(1) + 2   
              
        //   1







        // sum(2) = sum(1) + 2 = 1 + 2

        
        // sum(3) = sum(2) + 3 

        //          sum(1) + 2
    


    </script>
    
</body>
</html>